package cn.dida.service;

import java.util.List;

import cn.dida.model.Brand;
import cn.dida.model.Pageable;

/**
 * 品牌管理 业务层接口
 * @author weiwei
 */
public interface BrandService {
	/**
	 * 品牌列表
	 * @param companyId 公司id
	 * @param keyword 查询条件
	 * @param state 状态（1：正常、2：已停用）
	 * @param page 分页游标
	 * @return Pageable<Brand> 品牌分页列表
	 */
    Pageable<Brand> queryBrand(Integer companyId, String keyword, Integer state, int page);
    /**
     * 品牌列表
     * @param companyId 公司id
     * @param state 状态（1：正常、2：已停用）
     * @return List<Brand> 品牌列表
     */
    List<Brand> queryBrand(Integer companyId, Integer state);
    /**
     * 新增品牌
     * @param brand 品牌实体信息
     * @return int 受影响的记录行数
     */
    Boolean insertBrand(Brand brand);
    
    /**
     * 根据公司id和品牌id获取品牌信息
     * @param companyId 公司id
     * @param id 品牌id
     * @return Brand 品牌信息
     */
    Brand getBrand(Integer companyId, Integer id);
    /**
     * 根据公司id和品牌名称获取品牌信息
     * @param companyId 公司id
     * @param name 品牌名称
     * @return Brand 品牌信息
     */
    Brand getBrandByName(Integer companyId, String name);

    /**
     * 更新品牌
     * @param brand 品牌实体信息
     * @return int 受影响的记录行数
     */
    Boolean updateBrand(Brand brand);
    /**
     * 删除品牌
     * @param companyId 公司id
     * @param id 品牌id
     * @return int 受影响的记录行数
     */
    Boolean deleteBrand(Integer companyId, Integer id);
}
